package cn.oms.oms.controller;

import cn.oms.oms.entity.Emr;
import cn.oms.oms.entity.Item;
import cn.oms.oms.service.IItemService;
import cn.oms.oms.vo.ItemVo;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author AllenChen曾晨
 * @since 2022-04-29
 */
@RestController
@RequestMapping("/oms/item")
@Slf4j
public class ItemController {

    @Autowired
    public IItemService itemService;

    /**
     * 根据查询条件查询产品列表
     * @param itemVo
     * @return
     */
    @PostMapping("/selectItemList")
    public PageInfo<Item> selectItemList(ItemVo itemVo){
        if(itemVo.getPageNum()==null||itemVo.getPageNum()==0){
            itemVo.setPageNum(1);
        }
        if(itemVo.getPageSize()==null||itemVo.getPageSize()==0){
            itemVo.setPageSize(10);
        }
        log.debug("接收到信息:{}",itemVo);
        PageInfo<Item> pageInfo = itemService.selectItemList(itemVo);
        return pageInfo;
    }

    /**
     * 根据查询条件查询产品列表
     * @param itemVo
     * @return
     */
    @PostMapping("/selectItemDetail")
    public Item selectItemDetail(ItemVo itemVo){
        log.debug("接收到信息:{}",itemVo);
        Item item = itemService.selectItemDetail(itemVo);
        return item;
    }

    /**
     * 新增产品
     * @param itemVo
     * @return
     */
    @PostMapping("/addItem")
    public String addItem(ItemVo itemVo){
        log.debug("接收到信息:{}",itemVo);
        String res = itemService.addItem(itemVo);
        return res;
    }
    /**
     * 修改产品
     * @param itemVo
     * @return
     */
    @PostMapping("/updateItem")
    public String updateItem(ItemVo itemVo){
        log.debug("接收到信息:{}",itemVo);
        String res = itemService.updateItem(itemVo);
        return res;
    }
    /**
     * 删除产品
     * @param id
     * @return
     */
    @GetMapping("/deleteItem/{id}")
    public String deleteItem(@PathVariable Integer id){
        log.debug("接收到信息:{}",id);
        String res = itemService.deleteItem(id);
        return res;
    }
}
